﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


namespace Atentis_Connector
{
	class AtentisConnectorEventArgs: EventArgs
	{

		private StrategySettings m_SecurityStrategySettings;
		public StrategySettings SecurityStrategySettings { get { return m_SecurityStrategySettings; } }

		public AtentisConnectorEventArgs(StrategySettings secStrategySettings)
			: base()
		{
			this.m_SecurityStrategySettings = secStrategySettings;
		}

		private string m_IndName;
		public string IndName { get { return m_IndName; } }

		public AtentisConnectorEventArgs(string indName)
			: base()
		{
			this.m_IndName = indName;
		}


		private OrderInfo m_OrderInfo;
		/// <summary>
		/// Информация по ордеру
		/// </summary>
		public OrderInfo OrderInfo { get { return m_OrderInfo; } }

		public AtentisConnectorEventArgs(OrderInfo info)
			: base()
		{
			this.m_OrderInfo = info;
		}

		private WrapperAll_Trades m_AllTradesRow;
		/// <summary>
		/// Новая строка таблицы всех сделок
		/// </summary>
		public WrapperAll_Trades AllTradesRow { get { return m_AllTradesRow; } }

		public AtentisConnectorEventArgs(WrapperAll_Trades row)
			: base()
		{
			this.m_AllTradesRow = row;
		}

		private MoneyControl m_MoneyControl;
		/// <summary>
		/// Контроль капитала
		/// </summary>
		public MoneyControl MoneyControl { get { return m_MoneyControl; } set { m_MoneyControl = value; } }
		public AtentisConnectorEventArgs(MoneyControl m_MoneyControl)
		{
			// TODO: Complete member initialization
			this.m_MoneyControl = m_MoneyControl;
		}

		private WrapperTrades m_WrapeTradesRow;
		/// <summary>
		/// Новая строка таблицы своих сделок
		/// </summary>
		public WrapperTrades WrapeTradesRow { get { return m_WrapeTradesRow; } }

		public AtentisConnectorEventArgs(WrapperTrades row)
			: base()
		{
			this.m_WrapeTradesRow = row;
		}


		private WrapperPositions m_WrapperPositions;
		/// <summary>
		/// Новая строка таблицы позиций
		/// </summary>
		public WrapperPositions WrapperPositions { get { return m_WrapperPositions; } }

		public AtentisConnectorEventArgs(WrapperPositions row)
			: base()
		{
			this.m_WrapperPositions = row;
		}

		private WrapperFirm_Holding_Total m_WrapperHoldings;
		/// <summary>
		/// Новая строка таблицы позиций по бумагам
		/// </summary>
		public WrapperFirm_Holding_Total WrapperHoldings { get { return m_WrapperHoldings; } }

		public AtentisConnectorEventArgs(WrapperFirm_Holding_Total row)
			: base()
		{
			this.m_WrapperHoldings = row;
		}
	}
}
